using System;
using System.Collections.Generic;
using System.Text;

namespace Hoshimi
{
    public abstract class State
	{
		/// <summary>
		/// Constructor. Do not forget to implement the singleton pattern.
		/// </summary>
		protected State() { }

		/// <summary>
		/// Called when the unit is in this state
		/// </summary>
		/// <param name="unit"></param>
		/// <returns>Returns true if the state has blocked the unit for this (and only this) turn</returns>
		public abstract bool Play( Unit unit );
	}
}
